function nmFloat(source) {
    $(source).keyup(function() {
	var regex = new RegExp('^\\d+[.]\\d+$');
	var regex2 = new RegExp('^\\d+$');
	if(!(regex.test($(this).val()) || regex2.test($(this).val())) && $(this).val() != "") {
	    $(this).addClass("badInput");
	} else {
	    $(this).removeClass("badInput");
	}
    });
}

function nmDecimal(source) {
    $(source).keyup(function() {
	var regex = new RegExp('^\\d+$');
	if(!regex.test($(this).val()) && $(this).val() != "") {
	    $(this).addClass("badInput");
	} else {
	    $(this).removeClass("badInput");
	}
    });
}

function nmDate(source) {
    $(source).keyup(function() {
	var regex = new RegExp('^\\d{4}-\\d{2}-\\d{2}$');
	if(!regex.test($(this).val()) && $(this).val() != "") {
	    $(this).addClass("badInput");
	} else {
	    $(this).removeClass("badInput");
	}
    });
}